package cn.ffcs.security.web;

import java.util.List;

import cn.ffcs.base.web.BaseAction;
import cn.ffcs.security.model.Resource;

/**
 * 
 * 资源 action层，进行业务逻辑操作<br/> <table>
 * <tr>
 * <td>负责人/principal: </td>
 * <td colspan="2">liuzhh</td>
 * <tr>
 * <td>修改记录/revision:</td>
 * <td colspan="2"></td>
 * </tr>
 * <tr>
 * <td>日期:</td>
 * <td>修改人:</td>
 * <td>修改说明:</td>
 * </tr>
 * <tr>
 * <td></td>
 * <td></td>
 * <td></td>
 * </tr>
 * </table>
 * @author liuzhh
 * @version $Id$
 */
public class ResourceAction<R extends Resource> extends BaseAction<R>
{

    /** 网络标识 */
    private static final long serialVersionUID = -1843732228423117647L;

    /** 业务POJO **/
    private R resource;

    /** 业务列表数据 **/
    private List<R> resources;

    /**
     * 
     * 保存操作
     * @return
     */
    public String saveOrUpdate()
    {
        baseService.saveOrUpdate(resource);
        return SUCCESS;
    }
    
    /**
     * 
     * 删除操作
     * @return
     */
    public String remove()
    {
        baseService.remove(resource);
        return SUCCESS;
    }
    
    /**
     * 
     * 批量删除操作
     * @return
     */
    public String batchDel()
    {
        String[] ids = getContextObjects("ids");
        baseService.batchDel(ids);
        ;
        return SUCCESS;
    }
    
    /**
     * 
     * 根据关键字获取实体数据
     * @return
     */
    public String findById()
    {
        if (resource != null && resource.getId() != 0)
        {
            resource = (R) baseService.findById(resource.getId());
        }

        return SUCCESS;
    }
    
    /**
     * 
     * 获取资源对象
     * @return
     */
    public R getResource()
    {
        return resource;
    }
    
    /**
     * 
     * 设置资源对象
     * @return
     */
    public void setResource(R resource)
    {
        this.resource = resource;
    }
    
    /**
     * 
     * 获取资源列表数据
     * @return
     */
    public List<R> getResources()
    {
        return resources;
    }
    
    /**
     * 
     * 设置资源列表数据
     * @return
     */
    public void setResources(List<R> resources)
    {
        this.resources = resources;
    }

}
